package com.jiuqi.ccp.generator.dao.pojo;

import java.io.Serializable;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;

/** 
 *        @hibernate.class
 *         table="CCP_DTF_CONFIG"
 *     
*/
public class CcpDtfConfig implements Serializable {

    /** identifier field */
    private String cdcGuid;

    /** persistent field */
    private String callId;

    /** persistent field */
    private String opType;

    /** nullable persistent field */
    private String filePath;

    /** nullable persistent field */
    private String saveFile;

    /** persistent field */
    private String opService;

    /** persistent field */
    private String cdcTitle;

    /** nullable persistent field */
    private String cdcDesc;

    /** nullable persistent field */
    private String cgnGuid;

    /** nullable persistent field */
    private String label;

    /** nullable persistent field */
    private String module1;

    /** nullable persistent field */
    private String module2;

    /** nullable persistent field */
    private String module3;

    /** nullable persistent field */
    private String module4;

    /** nullable persistent field */
    private String module5;

    /** nullable persistent field */
    private String module6;

    /** nullable persistent field */
    private String module7;

    /** nullable persistent field */
    private String reserved1;

    /** nullable persistent field */
    private String reserved2;

    /** nullable persistent field */
    private String reserved3;

    /** full constructor */
    public CcpDtfConfig(String cdcGuid, String callId, String opType, String filePath, String saveFile, String opService, String cdcTitle, String cdcDesc, String cgnGuid, String label, String module1, String module2, String module3, String module4, String module5, String module6, String module7, String reserved1, String reserved2, String reserved3) {
        this.cdcGuid = cdcGuid;
        this.callId = callId;
        this.opType = opType;
        this.filePath = filePath;
        this.saveFile = saveFile;
        this.opService = opService;
        this.cdcTitle = cdcTitle;
        this.cdcDesc = cdcDesc;
        this.cgnGuid = cgnGuid;
        this.label = label;
        this.module1 = module1;
        this.module2 = module2;
        this.module3 = module3;
        this.module4 = module4;
        this.module5 = module5;
        this.module6 = module6;
        this.module7 = module7;
        this.reserved1 = reserved1;
        this.reserved2 = reserved2;
        this.reserved3 = reserved3;
    }

    /** default constructor */
    public CcpDtfConfig() {
    }

    /** minimal constructor */
    public CcpDtfConfig(String cdcGuid, String callId, String opType, String opService, String cdcTitle) {
        this.cdcGuid = cdcGuid;
        this.callId = callId;
        this.opType = opType;
        this.opService = opService;
        this.cdcTitle = cdcTitle;
    }

    /** 
     *            @hibernate.id
     *             generator-class="assigned"
     *             type="java.lang.String"
     *             column="CDC_GUID"
     *         
     */
    public String getCdcGuid() {
        return this.cdcGuid;
    }

    public void setCdcGuid(String cdcGuid) {
        this.cdcGuid = cdcGuid;
    }

    /** 
     *            @hibernate.property
     *             column="CALL_ID"
     *             length="6"
     *             not-null="true"
     *         
     */
    public String getCallId() {
        return this.callId;
    }

    public void setCallId(String callId) {
        this.callId = callId;
    }

    /** 
     *            @hibernate.property
     *             column="OP_TYPE"
     *             length="2"
     *             not-null="true"
     *         
     */
    public String getOpType() {
        return this.opType;
    }

    public void setOpType(String opType) {
        this.opType = opType;
    }

    /** 
     *            @hibernate.property
     *             column="FILE_PATH"
     *             length="100"
     *         
     */
    public String getFilePath() {
        return this.filePath;
    }

    public void setFilePath(String filePath) {
        this.filePath = filePath;
    }

    /** 
     *            @hibernate.property
     *             column="SAVE_FILE"
     *             length="2"
     *         
     */
    public String getSaveFile() {
        return this.saveFile;
    }

    public void setSaveFile(String saveFile) {
        this.saveFile = saveFile;
    }

    /** 
     *            @hibernate.property
     *             column="OP_SERVICE"
     *             length="8"
     *             not-null="true"
     *         
     */
    public String getOpService() {
        return this.opService;
    }

    public void setOpService(String opService) {
        this.opService = opService;
    }

    /** 
     *            @hibernate.property
     *             column="CDC_TITLE"
     *             length="100"
     *             not-null="true"
     *         
     */
    public String getCdcTitle() {
        return this.cdcTitle;
    }

    public void setCdcTitle(String cdcTitle) {
        this.cdcTitle = cdcTitle;
    }

    /** 
     *            @hibernate.property
     *             column="CDC_DESC"
     *             length="200"
     *         
     */
    public String getCdcDesc() {
        return this.cdcDesc;
    }

    public void setCdcDesc(String cdcDesc) {
        this.cdcDesc = cdcDesc;
    }

    /** 
     *            @hibernate.property
     *             column="CGN_GUID"
     *             length="32"
     *         
     */
    public String getCgnGuid() {
        return this.cgnGuid;
    }

    public void setCgnGuid(String cgnGuid) {
        this.cgnGuid = cgnGuid;
    }

    /** 
     *            @hibernate.property
     *             column="LABEL"
     *             length="100"
     *         
     */
    public String getLabel() {
        return this.label;
    }

    public void setLabel(String label) {
        this.label = label;
    }

    /** 
     *            @hibernate.property
     *             column="MODULE1"
     *             length="2"
     *         
     */
    public String getModule1() {
        return this.module1;
    }

    public void setModule1(String module1) {
        this.module1 = module1;
    }

    /** 
     *            @hibernate.property
     *             column="MODULE2"
     *             length="2"
     *         
     */
    public String getModule2() {
        return this.module2;
    }

    public void setModule2(String module2) {
        this.module2 = module2;
    }

    /** 
     *            @hibernate.property
     *             column="MODULE3"
     *             length="2"
     *         
     */
    public String getModule3() {
        return this.module3;
    }

    public void setModule3(String module3) {
        this.module3 = module3;
    }

    /** 
     *            @hibernate.property
     *             column="MODULE4"
     *             length="2"
     *         
     */
    public String getModule4() {
        return this.module4;
    }

    public void setModule4(String module4) {
        this.module4 = module4;
    }

    /** 
     *            @hibernate.property
     *             column="MODULE5"
     *             length="2"
     *         
     */
    public String getModule5() {
        return this.module5;
    }

    public void setModule5(String module5) {
        this.module5 = module5;
    }

    /** 
     *            @hibernate.property
     *             column="MODULE6"
     *             length="2"
     *         
     */
    public String getModule6() {
        return this.module6;
    }

    public void setModule6(String module6) {
        this.module6 = module6;
    }

    /** 
     *            @hibernate.property
     *             column="MODULE7"
     *             length="2"
     *         
     */
    public String getModule7() {
        return this.module7;
    }

    public void setModule7(String module7) {
        this.module7 = module7;
    }

    /** 
     *            @hibernate.property
     *             column="RESERVED1"
     *             length="50"
     *         
     */
    public String getReserved1() {
        return this.reserved1;
    }

    public void setReserved1(String reserved1) {
        this.reserved1 = reserved1;
    }

    /** 
     *            @hibernate.property
     *             column="RESERVED2"
     *             length="100"
     *         
     */
    public String getReserved2() {
        return this.reserved2;
    }

    public void setReserved2(String reserved2) {
        this.reserved2 = reserved2;
    }

    /** 
     *            @hibernate.property
     *             column="RESERVED3"
     *             length="200"
     *         
     */
    public String getReserved3() {
        return this.reserved3;
    }

    public void setReserved3(String reserved3) {
        this.reserved3 = reserved3;
    }

    public String toString() {
        return new ToStringBuilder(this)
            .append("cdcGuid", getCdcGuid())
            .toString();
    }

    public boolean equals(Object other) {
        if ( !(other instanceof CcpDtfConfig) ) return false;
        CcpDtfConfig castOther = (CcpDtfConfig) other;
        return new EqualsBuilder()
            .append(this.getCdcGuid(), castOther.getCdcGuid())
            .isEquals();
    }

    public int hashCode() {
        return new HashCodeBuilder()
            .append(getCdcGuid())
            .toHashCode();
    }

}
